﻿Imports DTO
Imports BUS
Imports DAO

Public Class ucPhieuThu
    Private Sub btnLapPhieuThu_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnLapPhieuThu.Click
        '
        'Kiem tra nhập liệu
        '
        Dim bool As Boolean = True
        lbThongBao.Text = ""
        lbThongBao.Visible = True
        Dim thuong = "ạáàãảâậấầẩẫăặắằẳẵđẹéèẻẽêệếềểễíìỉĩịọòóỏõôộỗổồốơợớờởỡúùủũụưựứừửữ"
        Dim HOA = "ẠÁÀẢÃĂẶẰẮẲẴÂẤẦẨẪẬĐÉÈẼẺẸÊẾỀỂỄỆIÍÌỈĨỊỌÒÓỎÕÔỘỒỐỔỖƠỜỚỢỞỠÚÙỦŨỤƯỰỬỮỨỪ"

        If txtTenKH.Text = "" Or txtDiaChi.Text = "" Or txtSoTienThu.Text Then
            lbThongBao.Text = "Bắt buộc phải nhập tên, địa chỉ, và số tiền thu."
            lbThongBao.Visible = True
            Exit Sub
        End If
        Dim regex = "^([A-Z" & HOA & "]{1}[a-z" & thuong & "]+[ ]{1})+[A-Z" & HOA & "]{1}[a-z" & thuong & "]+$"
        If Not Check(txtTenKH.Text, regex) Then
            lbThongBao.Text &= "Tên khách hàng, "
            bool = False
        End If
        regex = "^[A-Za-z0-9 /.-" + thuong + HOA + "]+$"
        If Not Check(txtDiaChi.Text, regex) Then
            lbThongBao.Text &= "Địa chỉ, "
            bool = False
        End If
        regex = "^[0-9]+$"
        If txtSoTienThu.Text <> "" AndAlso Not Check(txtSoTienThu.Text, regex) Then
            lbThongBao.Text &= "Số tiền thu, "
            bool = False
        End If

        regex = "^[0-9]+$"
        If txtCMND.Text <> "" AndAlso Not Check(txtCMND.Text, regex) Then
            lbThongBao.Text &= "CMND, "
            bool = False
        End If
        regex = "^[a-z0-9._]+@[a-z]+.{1}[a-z]{2,4}$"
        If txtEmail.Text <> "" AndAlso Not Check(txtEmail.Text, regex) Then
            lbThongBao.Text &= "Email, "
            bool = False
        End If
        regex = "^[0-9]+$"
        If txtSoTienNo.Text <> "" AndAlso Not Check(txtSoTienNo.Text, regex) Then
            lbThongBao.Text &= "Số tiền nợ, "
            bool = False
        End If
        If Not bool Then
            lbThongBao.Text &= " KHÔNG HỢP LỆ."
            Exit Sub
        End If
        '
        'Bắt đầu thêm phiếu thu
        '
        Dim ucdate = New ucNgay
        Dim ptBUS As New PhieuThuBUS
        Dim ptDTO As New PhieuThuDTO

        ptDTO.TenKH = txtTenKH.Text
        ptDTO.DiaChi = txtDiaChi.Text
        ptDTO.Phone = txtSoDT.Text
        ptDTO.Email = txtEmail.Text
        ptDTO.NgayThu = ucdate.Ngay
        ptDTO.SoTienThu = txtSoTienThu.Text

        ptBUS.Them(ptDTO)

        'ghi nợ
        If txtCMND.Text <> "" And txtSoTienNo.Text <> "" Then
            Dim khDTO As New KhachHangDTO
            Dim khBUS As New KhachHangBUS

            khDTO.TenKH = ptDTO.TenKH
            khDTO.CMND = txtCMND.Text
            khDTO.DiaChi = ptDTO.DiaChi
            khDTO.Phone = ptDTO.Phone
            khDTO.Email = ptDTO.Email
            khDTO.SoTienNo = txtSoTienNo.Text

            Dim kh = khBUS.TimTheoCMND(khDTO.CMND)
            If kh.CMND Is Nothing Then
                khBUS.Them(khDTO)
            Else
                khBUS.CapNhatTienNo(khDTO)
            End If

        End If
        If lbThongBao.Text = "" Then lbThongBao.Text = "Lập phiếu thu toàn bộ thành công."

    End Sub

    Private Sub btnNewPT_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNewPT.Click
        lbThongBao.Visible = False
        txtCMND.Clear()
        txtDiaChi.Clear()
        txtEmail.Clear()
        txtSoDT.Clear()
        txtSoTienNo.Clear()
        txtSoTienThu.Clear()
        txtTenKH.Clear()
    End Sub
End Class
